package com.xinyue.design.iterator;

/**
 * List容器实现统一遍历接口实现类
 */
public class ListIterator implements Iterator{
	
	private int index = -1;

	private ListImpl coll = null;
	
	/**
	 * 构造器，传入具体需要遍历的List容器
	 * @param coll
	 */
	public ListIterator(ListImpl coll) {
		this.coll = coll;
	}
	
	/**
	 * 第一个元素下标
	 */
	public void first() {
		index = 0;
	}

	/**
	 * 下一个元素下标
	 */
	public void next() {
		index++;
	}

	/**
	 * 是否是最后一个元素
	 */
	public boolean isLast() {
		if(coll.size() == index) {
			return true;
		}
		return false;
	}

	/**
	 * 获取list中的元素
	 */
	public Object IteratorItem() {
		if(index < 0) {
			return null;
		}else {
			return coll.get(index++);
		}
	}

}
